package com.erp.erp_entitys.money.entity;

import com.erp.annotation.PropertyMsg;

import java.math.BigDecimal;
import java.util.Date;
import java.io.Serializable;

/**
 * 资金管理-付款-实付明细表(PaymentDetailActually)实体类
 *
 * @author lst
 * @since 2021-04-04 23:03:21
 */
public class PaymentDetailActuallyEntity implements Serializable {
    private static final long serialVersionUID = -86664566859625413L;
    /**
    * 主键id
    */
    private Integer id;
    /**
    * 付款主表id
    */
    private Integer parentId;
    /**
     * 付款明细id
     */
    private Integer detailId;
    /**
    * 发票编号
    */
    @PropertyMsg("发票编号")
    private String invoiceNumber;
    /**
    * 采购单号
    */
    @PropertyMsg("采购单号")
    private String purchaseNo;
    /**
    * 外销合同号
    */
    @PropertyMsg("外销合同号")
    private String contractNo;
    /**
    * 实付日期
    */
    @PropertyMsg("实付日期")
    private Date time;
    /**
    * 付款银行名称
    */
    @PropertyMsg("付款银行名称")
    private String bankName;
    /**
    * 付款账号
    */
    @PropertyMsg("付款账号")
    private String account;
    /**
    * 币种名称
    */
    @PropertyMsg("币种")
    private String currencyName;
    /**
    * 币种编码
    */
    private String currencyCode;
    /**
    * 汇率
    */
    @PropertyMsg("汇率")
    private BigDecimal exchangeRate;
    /**
    * 实付金额
    */
    @PropertyMsg("实付金额")
    private BigDecimal amount;
    /**
    * 操作员
    */
    @PropertyMsg("操作员")
    private String operator;
    /**
    * 操作员编码
    */
    private String operationCode;
    /**
    * 创建时间
    */
    private Date createDate;
    /**
    * 修改时间
    */
    private Date modifyTime;
    /**
    * 是否有效(0:无效 1:有效)
    */
    private Integer valid;

    private String remark;

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public Integer getDetailId() {
        return detailId;
    }

    public void setDetailId(Integer detailId) {
        this.detailId = detailId;
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public Integer getParentId() {
        return parentId;
    }

    public void setParentId(Integer parentId) {
        this.parentId = parentId;
    }

    public String getInvoiceNumber() {
        return invoiceNumber;
    }

    public void setInvoiceNumber(String invoiceNumber) {
        this.invoiceNumber = invoiceNumber;
    }

    public String getPurchaseNo() {
        return purchaseNo;
    }

    public void setPurchaseNo(String purchaseNo) {
        this.purchaseNo = purchaseNo;
    }

    public String getContractNo() {
        return contractNo;
    }

    public void setContractNo(String contractNo) {
        this.contractNo = contractNo;
    }

    public Date getTime() {
        return time;
    }

    public void setTime(Date time) {
        this.time = time;
    }

    public String getBankName() {
        return bankName;
    }

    public void setBankName(String bankName) {
        this.bankName = bankName;
    }

    public String getAccount() {
        return account;
    }

    public void setAccount(String account) {
        this.account = account;
    }

    public String getCurrencyName() {
        return currencyName;
    }

    public void setCurrencyName(String currencyName) {
        this.currencyName = currencyName;
    }

    public String getCurrencyCode() {
        return currencyCode;
    }

    public void setCurrencyCode(String currencyCode) {
        this.currencyCode = currencyCode;
    }

    public BigDecimal getExchangeRate() {
        return exchangeRate;
    }

    public void setExchangeRate(BigDecimal exchangeRate) {
        this.exchangeRate = exchangeRate;
    }

    public BigDecimal getAmount() {
        return amount;
    }

    public void setAmount(BigDecimal amount) {
        this.amount = amount;
    }

    public String getOperator() {
        return operator;
    }

    public void setOperator(String operator) {
        this.operator = operator;
    }

    public String getOperationCode() {
        return operationCode;
    }

    public void setOperationCode(String operationCode) {
        this.operationCode = operationCode;
    }

    public Date getCreateDate() {
        return createDate;
    }

    public void setCreateDate(Date createDate) {
        this.createDate = createDate;
    }

    public Date getModifyTime() {
        return modifyTime;
    }

    public void setModifyTime(Date modifyTime) {
        this.modifyTime = modifyTime;
    }

    public Integer getValid() {
        return valid;
    }

    public void setValid(Integer valid) {
        this.valid = valid;
    }


    /**
     * 重写toString
     */
    @Override
    public String toString() {
        final StringBuilder sb = new StringBuilder("PaymentDetailActuallyEntity").append('[')
                .append("id=")
                .append(id)
                .append(",parentId=")
                .append(parentId)
                .append(",invoiceNumber=")
                .append(invoiceNumber)
                .append(",purchaseNo=")
                .append(purchaseNo)
                .append(",contractNo=")
                .append(contractNo)
                .append(",time=")
                .append(time)
                .append(",bankName=")
                .append(bankName)
                .append(",account=")
                .append(account)
                .append(",currencyName=")
                .append(currencyName)
                .append(",currencyCode=")
                .append(currencyCode)
                .append(",exchangeRate=")
                .append(exchangeRate)
                .append(",amount=")
                .append(amount)
                .append(",operator=")
                .append(operator)
                .append(",operationCode=")
                .append(operationCode)
                .append(",createDate=")
                .append(createDate)
                .append(",modifyTime=")
                .append(modifyTime)
                .append(",valid=")
                .append(valid)
                .append(']');
        return sb.toString();
    }
}